/*

    插入排序: 把数组分为左右两部分:左边有序,右边无序,每次从右边取出一个插入到左边的正确位置
 */


function insert_sort(array) {
    if (!array) return;
    var len = array.length;
    for (var i = 1; i < len; i++) {
        var idx = i;
        while (idx > 0) {
            if (array[idx] < array[idx - 1]) {
                var temp = array[idx];
                array[idx] = array[idx - 1];
                array[idx - 1] = temp;
                idx--; // 再让交换过位置的与前面的数据比较
            } else {
                break;
            }
        }
    }


}


var arr = [32, 42, 1, 89, 23, 154, 79, 81, 66, 7];

insert_sort(arr);


console.log('insert sort:');
console.log(arr);